import { listMap } from '../config/app'
import { parseTime } from './jcore/time'

// 时间转年月日
export function parseTimeYMD(date) {
  return date ? parseTime(date, '{y}-{m}-{d}') : ''
}

// 时间转年月日时分秒
export function parseTimePro(date) {
  return date ? parseTime(date) : ''
}
// 身份证号码加星号
export function idNumberFormat(id) {
  if (!id || !id.replace) return ''
  return id.replace(/^(.{4})(?:\d+)(.{4})$/, '$1******$2')
}
/**
 * 计算附件大小
 * @param {String} size
 * @param {String} unit
 */
export function countFileSize(size, unit = 0) {
  size = Number(size)
  const unitArr = ['KB', 'M', 'G']
  if (isNaN(size)) return ''
  size = (size / 1024).toFixed(2)
  if (size > 1024) {
    unit++
    return countFileSize(size, unit)
  }
  return size + unitArr[unit]
}
/**
 * 列表枚举映射
 * @param {any} value
 * @param {string} name
 * @returns
 */
export function listFormat(value, name) {
  if (value === null || value === undefined) return ''
  const list = listMap[name]
  if (!Array.isArray(list)) {
    console.log(`请在 src/config/app.js 的 listMap 里配置 ${name} 的映射列表`)
    return ''
  }
  const cur = list.find((x) => x.value === value)
  return cur ? cur.label : ''
}
